package com.tiancheng.trade.commom.core.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @Author: kellen
 * @Description: 交易中台rabbit消息退列名称、exchange
 * @Date: create in 2024/11/26 14:54
 */
@Getter
@AllArgsConstructor
public enum TradeRabBitMqEnums {


    // -----------------------------------------------------------订单中心内部处理订单状态的队列
    /**
     * 订单通知队列
     */
    QUEUE_ORDER_NOTIFY("trade.order.direct", "trade.order.status", "trade.order.status"),

    /**
     * 订单消息通知ttl队列
     */
    QUEUE_TTL_ORDER_NOTIFY("trade.order.direct.ttl", "trade.order.status.ttl", "trade.order.status.ttl"),





    // -----------------------------------------------------------支付中心----->>>>订单中心 支付状态、退款状态的队列
    /**
     * 支付消息通知队列
     */
    QUEUE_PAYMENT_NOTIFY("trade.payment.direct", "trade.payment.status", "trade.payment.status"),

    /**
     * 支付消息通知队列
     */
    QUEUE_TTL_PAYMENT_NOTIFY("trade.payment.direct.ttl", "trade.payment.status.ttl", "trade.payment.status.ttl"),

    /**
     * 支付结算通知队列
     */
    QUEUE_SETTLE_MESSAGE("trade.payment.settle.direct", "trade.payment.settle.message", "trade.payment.settle.message"),

    //-----------------------------------------------------------------------------支付中心公用队列
    /**
     * 支付中心公用队列
     */
    QUEUE_PAYMENT_COMMON_MESSAGE("trade.payment.common.message.direct", "trade.payment.common.message", "trade.payment.common.message"),

    /**
     * 支付中心公用队列ttl队列
     */
    QUEUE_TTL_PAYMENT_COMMON_MESSAGE("trade.payment.common.message.direct.ttl", "trade.payment.common.message.ttl", "trade.payment.common.message.ttl"),

    ;


    /**
     *
     */

    /**
     * 交换名称
     */
    private final String exchange;
    /**
     * 队列名称
     */
    private final String name;
    /**
     * 路由键
     */
    private final String routeKey;
}
